<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ProMRDS Maze Simulator</title>
<link href="../Styles/Standard.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table width="100%">
<tr>
<td width="200"><a href="http://www.ProMRDS.com"><img src="../Images/HomeIcon.gif" alt="ProMRDS Home Page" border="0" width="200" height="60" /></a></td>
<td width="*" align="center"><img src="Images/MazeSimulator.gif" alt="Maze Simulator" /></td>
</tr>
<tr>
<td colspan="2"><hr /></td>
</tr>
</table>

<div class="page">
<p class="heading"><span class="smallhead">Professional</span><br />&nbsp;&nbsp;&nbsp;Microsoft Robotics Developer Studio<br />
<a href="http://www.ProMRDS.com" onmouseout="Home.src='../Images/Home.gif';" onmouseover="Home.src='../Images/Home_f2.gif';"><img name="Home" src="../Images/Home.gif" width="150" height="25" border="0" alt="Home Page" /></a>
<a href="../ReadMe.htm" onmouseout="Contents.src='../Images/Contents.gif';" onmouseover="Contents.src='../Images/Contents_f2.gif';"><img name="Contents" src="../Images/Contents.gif" width="150" height="25" border="0" alt="Book Contents" /></a>
<a href="ReadMe.htm" onmouseout="ThisChapter.src='../Images/ThisChapter.gif';" onmouseover="ThisChapter.src='../Images/ThisChapter_f2.gif';"><img name="ThisChapter" src="../Images/ThisChapter.gif" width="150" height="25" border="0" alt="This Chapter" /></a>
</p>

<h1>Maze Simulator</h1>

<p>
The original idea (and code) for the Maze Simulator came from Ben Axelrod
and was posted on <a href="http://channel9.msdn.com/ShowPost.aspx?PostID=226071">Channel 9</a>.
</p>
<p>
The code has been modified by Trevor Taylor so that you can have coloured walls and they
can also be of different heights. The program only supports 16 different
colours (or textures), but this is sufficient to give it that wonderful 
"Lego-like" quality that seems so appropriate for a simulated maze.
</p>
<p>
In addition, you can create spheres, i.e. balls, that the robot can push around.
A little "magic" is required to make a ball bounce properly. The relevant
parameter is exposed in the config file as the Bounce Threshold.
</p>
<p>
The Maze Simulator allows you to select either the Pioneer 3DX robot
(with a camera mounted on top) or the Lego NXT by changing the RobotType in the
configuration file. You can also change the position and orientation of the
camera.
</p>
<p>
The Maze Simulator can also be used for <a href="LineFollowing.htm">Visual Line Following</a>.
You need to create your lines as a bitmap, and then set up the Maze Simulator
configuration so that the lines are very tiny walls -- only a couple of millimeters high.
Then you adjust the camera so that it points downwards and you have to use vision to
find and follow the lines.
</p>
<p>
To create new mazes, a <a href="MazeGenerator.htm">Maze Generator</a> program is also
included with the code in this chapter.
</p>
<p>
The Maze Simulator allows you to get something up and
running quickly in a simulated, but interesting, environment.
</p>

<h2>Available Resources</h2>
<p>
A <a href="MazeSimulatorDocumentation.htm">Documentation page</a> is provided with
instructions on how to run the program.
</p>

<p>
There is a brief <a href="MazeSimulatorTutorial.htm">Tutorial</a>.
However, it does not explain the program in detail. You can use
the software without having to make any changes to the code. You should
try the Microsoft Simulation Tutorials on which this program is based.
</p>

<h2>Legal Stuff</h2>
<p>
This code is based very heavily on the Microsoft MRDS Tutorials
and feedback from the MRDS Team. It is not warranted to be
suitable for any purpose other than playing around with MRDS. There
are known bugs, and it is not intended as a definitive example of
how to write robotic systems or simulation systems.
</p>

<a href="MazeSimulatorDocumentation.htm">[&nbsp;Documentation&nbsp;]</a>&nbsp;|&nbsp;<a href="MazeSimulatorTutorial.htm">[&nbsp;Tutorial&nbsp;]</a>

</div>

<hr />
<div class="footer">
Page maintained by:
<a href="m&#97;&#105;&#108;t&#111;:webmaster&#64;promrds&#46;com">webmaster&#64;promrds.com</a><br />
Last Updated: Mar-2008
</div>

</body>
</html>
